Existing systems for provisioning media content (e.g., videos, music) from a server to one or more user devices generally use a protocol for streaming such content from the server to a playback means (i.e., a video and/or audio player) on the user device, as long as such player is capable of receiving such content for display on the device. On typical user devices, applications or players may be available to receive and use/play such content. The user device may be in proximity to an external media streaming device that streams content for presentation on output devices, such as a television and/or a home theater audio system. The user device can display various media content (e.g., videos, music) to a user, and the user may select media content for playback on either the user device or an output device of the media streaming device. In existing systems, the server typically transmits media content (e.g., videos, music) to the user device for playback on the user device. The user device may have a smaller display and a basic speaker system as compared to the output devices (e.g., television and/or a home theater audio system) that are connected to a media streaming device. In existing systems, the media content which the server provides to the user device is generally not customized for the hardware of the output devices of the media streaming device. This is because existing techniques rely on the settings of the user device with no means to determine whether the user device is capable of initiating and/or controlling playback of the media content on output devices of a media streaming device.
Traditionally, when a user device loads a web page that has a placeholder for additional media content (e.g., a recommended video or an advertisement), the user device usually sends a request to a server for the additional media content. The server receives the request, selects the additional media content, and sends the additional media content to the user device. The server is typically unaware of whether the user device is capable of initiating and/or controlling playback of the additional media content on output devices of a media streaming device. The user device loads the additional media content in the web page. With conventional content sharing systems, after the additional media content is loaded, the user device then determines whether the user device can communicate with a media streaming device. If the user device can communicate with a media streaming device, a media player on the user device can display an indicator (e.g., icon) to notify the user that the additional media content item can be played on an output device of the media streaming device.
In existing systems, the server typically provides additional media content pertaining to the user request without knowledge of the user device's capability to initiate and/or control playback of the additional media content on a media streaming device. As such, the server usually provides additional media content that is formatted for playback on the user device, which may not be the best format to use if the additional media content can be played on an output device of a media streaming device such as a television and/or a home theater sound system.
Conversely, the server can provide the user device with additional media content that is formatted for playback on an output device of a media streaming device such as a television and/or a home theater sound system. However, if the user device cannot communicate with the media streaming device, a large amount of broadband data bandwidth and memory may be used for transmitting and playing the additional media content in a format not compatible with the user device.
Further, in existing systems, when additional media content is loaded on a user device and then played on an output device of a media streaming device, content sharing systems typically assign two different sessions for loading the additional media content on the user device and playing the additional media content on the output device of the media streaming device. Conventional content sharing systems generally do not attribute the time the additional media content is played on the output device of the media streaming device with the presentation of the additional media content on the user device, and mistakenly track the displaying of the additional media content on the user device and playing of the additional media content on the output device of the media streaming device independently.